Evolving Robocode Tank Fighters
نویسنده
چکیده
In this paper, I describe the application of genetic programming to evolve a controller for a robotic tank in a simulated environment. The purpose is to explore how genetic techniques can best be applied to produce controllers based on subsumption and behavior oriented languages such as REX. As part of my implementation, I developed TableRex, a modification of REX that can be expressed on a fixed-length genome. Using a fixed subsumption architecture of TableRex modules, I evolved robots that beat some of the most competitive hand-coded adversaries.
منابع مشابه
Applying and Comparing Evolutionary Algorithms for Robot Tanks
Robocode, an open source tank combat game, has become immensely popular based on both its educational as well as its “fun" value. Throughout the years, many interesting AIs have been developed for Robocode, most of which were based on finite-state machines and were generally “hard-coded". The effects of employing evolutionary algorithms and machine learning on Robocode, however, have not been s...
متن کاملGP-Robocode: Using Genetic Programming to Evolve Robocode Players
This paper describes the first attempt to introduce evolutionarily designed players into the international Robocode league, a simulationbased game wherein robotic tanks fight to destruction in a closed arena. Using genetic programming to evolve tank strategies for this highly active forum, we were able to rank third out of twenty-seven players in the category of HaikuBots. Our GPBot was the onl...
متن کاملGenetic Programming and Robocode
Robocode is a virtual environment in which in Java programmed bots compete. It is a perfect environment to apply and test Genetic Programming. This thesis describes an implementation which uses both grammar and trees to generate and mutate Java code. Populations, which evolve parallel, focus on different aspects of Robocode bots to refrain from converging to local maxima. The are mixed at the e...
متن کاملJust For Fun: Using Programming Games in Software Programming Training and Education - A Field Study of IBM Robocode Community
Executive Summary Improving learning effectiveness has always been a constant challenge in software education and training. One of the primary tasks educators face is to motivate learners to perform to their best abilities. Using computer games is one means to encourage learners to learn (Klawe, 1994). When games are used in general education, they could enhance self-esteem for the learners, re...
متن کاملGenetic Programming for Robocode Strategy
We present an approach to learning Robocode controller strategy. Robocode strategies are represented as trees of atomic elements corresponding to actions and observations in a Robocode battle. Genetic programming is used to search the space of such representations. Through this approach, we were able to induce stategies capable of defeating many hand-coded tanks.
متن کامل